home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 25 / Cream of the Crop 25.iso / bbs / pcsuni1.zip / HOHO302.ZIP / HOHAUS4.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1997-03-24  |  9KB  |  359 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.2O (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Integer  INTEGER001
  21.     Integer  INTEGER002
  22.     Integer  INTEGER003
  23.     Integer  INTEGER004
  24.     Integer  INTEGER005
  25.     Integer  INTEGER006
  26.     Integer  INTEGER007
  27.     Integer  TINTEGER008(10)
  28.     Integer  INTEGER009
  29.     Integer  INTEGER010
  30.     Integer  INTEGER011
  31.     Integer  INTEGER012
  32.     Integer  INTEGER013
  33.     String   STRING001
  34.     String   STRING002
  35.     String   STRING003
  36.     String   STRING004
  37.     String   STRING005
  38.     String   STRING006
  39.     String   STRING007
  40.     String   STRING008
  41.  
  42. ;------------------------------------------------------------------------------
  43.  
  44.     Cls
  45.     Goto LABEL001
  46.     End
  47.     If (0 == 0) STRING001 = "NO"
  48.     If (0 == 1) STRING001 = "YES"
  49.  
  50.     EndFunc
  51.  
  52.     :LABEL001
  53.     STRING003 = String(PcbNode())
  54.     If (PcbNode() == 0) STRING003 = "A"
  55.     INTEGER010 = ToInteger(GetEnv(STRING003 + "RECNO"))
  56.     STRING006 = "@X10┌─────────────────────────────────────────────────────────────────────────────@X19┐@X0F"
  57.     STRING005 = "@X10└@X19─────────────────────────────────────────────────────────────────────────────@X19┘@X0F"
  58.     STRING007 = "@X40┌─────────────────────────────────────────────────────────────────────────────@X4C┐@X0F"
  59.     STRING008 = "@X40└@X4C─────────────────────────────────────────────────────────────────────────────┘@X0F"
  60.     DOpen 6, PPEPath() + "PCS.DBF", 0
  61.     DGet 6, "NOSEJOB", INTEGER011
  62.     DGet 6, "MAMMARY", INTEGER012
  63.     DGet 6, "STD", INTEGER013
  64.     DClose 6
  65.     :LABEL002
  66.     Gosub LABEL005
  67.     If (INTEGER003 < 1) Then
  68.         Newlines 3
  69.         PrintLn STRING007
  70.         PrintLn "@X40│                       @X4E   YOU DON'T HAVE ANY WHORES!                         @X4C│@X0F"
  71.         PrintLn STRING008
  72.         Delay (2 * 182) / 10
  73.     Else
  74.         BOOLEAN001 = 0
  75.         DOpen 2, PPEPath() + "LADIES.DBF", 0
  76.         Newline
  77.         PrintLn "          @X10┌─────────────────────────────────────────────────────────@X19┐@X0F"
  78.         PrintLn "          @X10│ @X1E## @X10│ @X1CWhore Name     @X10│ @X1ELooks @X10│ @X1ASize @X10│ @X1BSick @X10│ @X12Cash Earned @X19│@X0F"
  79.         PrintLn "          @X10│ @X19─────────────────────────────────────────────────────── @X19│@X0F"
  80.         For INTEGER004 = 1 To INTEGER003
  81.             STRING002 = Strip("G" + String(INTEGER004), " ")
  82.             DGo 2, DGet(0, STRING002)
  83.             TINTEGER008(INTEGER004) = DRecNo(2)
  84.             If (DGet(2, "INFECTED") == "Y") INTEGER009 = DGet(2, "RANK") * DGet(2, "BS") * (Random(10) / 2)
  85.             If (DGet(2, "INFECTED") == "N") INTEGER009 = DGet(2, "RANK") * DGet(2, "BS") * Random(10)
  86.             If (INTEGER004 <= 9) Then
  87.                 PrintLn "          @X10│ @X1E", INTEGER004, "@X1A) @X10│@X1C ", DGet(2, "NAME"), "@POS:27@@X10│  @X1E", DGet(2, "RANK"), "@POS:41@@X10│  @X1A", DGet(2, "BS"), "@X10@POS:48@│ @X1B ?@POS:55@@X10│ @X12 ", INTEGER009, "@POS:69@@X19│@X0F"
  88.                 Continue
  89.             Endif
  90.             PrintLn "          @X10│@X1E", INTEGER004, "@X1A) @X10│@X1C ", DGet(2, "NAME"), "@X10@POS:27@│  @X1E", DGet(2, "RANK"), "@POS:41@@X10│  @X1A", DGet(2, "BS"), "@POS:48@@X10│  @X1B", DGet(2, "INFECTED"), "@POS:55@@X10│ @X12 ", INTEGER009, "@POS:69@@X19│@X0F"
  91.         Next
  92.         PrintLn "          @X10└@X19─────────────────────────────────────────────────────────┘@X0F"
  93.         Print " @X03█ @X0E(@X0AD@X0E)@X02ump a whore! @X03█ @X0E(@X0AR@X0E)@X02ename a whore @X03█ @X0E(@X0AV@X0E)@X02isit Doctor@X03 █ @X0E(@X0AENTER@X0E) @X02to quit! @X03█ "
  94.         InputStr "Your Choice: _", STRING004, 9, 1, "DRMV", 0 + 8
  95.         BOOLEAN001 = 1
  96.         If (STRING004 == "") Goto LABEL006
  97.         If (STRING004 == "D") Then
  98.             Backup 80
  99.             ClrEol
  100.             Print "               @X0CWHORE @X0E[@X0A##@X0E] @X0CTO DUMP"
  101.             Backup 11
  102.             InputStr "_", INTEGER001, 2, 9, Mask_Num(), 0
  103.             If (((INTEGER001 == "") || (INTEGER001 == 0)) || (INTEGER001 > INTEGER003)) Goto LABEL002
  104.             Gosub LABEL005
  105.             DOpen 2, PPEPath() + "LADIES.DBF", 0
  106.             DGo 2, TINTEGER008(INTEGER001)
  107.             INTEGER007 = DGet(2, "RANK") * Random(100)
  108.             If (INTEGER007 > DGet(0, "CASH")) Then
  109.                 Gosub LABEL004
  110.                 Goto LABEL002
  111.             Endif
  112.             PrintLn STRING007
  113.             PrintLn "@X40│    @X4EIt'll cost you $@X4A", INTEGER007, "@X4E to dump this one.@POS:79@@X4C│@X0F"
  114.             PrintLn STRING008
  115.             Print "               Dump her [ ] [Y]es / [N]o"
  116.             Backup 15
  117.             InputStr "_", STRING004, 15, 1, "YN", 0 + 8
  118.             If ((STRING004 == "") || (STRING004 == "N")) Goto LABEL002
  119.             STRING002 = Strip("G" + String(INTEGER001), " ")
  120.             DPut 0, "CASH", DGet(0, "CASH") - INTEGER007
  121.             DPut 0, STRING002, 0
  122.             DPut 2, "OWNEDBY", "NONE"
  123.             BOOLEAN001 = 1
  124.             Goto LABEL002
  125.         Endif
  126.         If (STRING004 == "R") Then
  127.             Backup 80
  128.             ClrEol
  129.             Print "             @X0CWHORE @X0E[@X0A#@X0E] @X0CTO RENAME"
  130.             Backup 12
  131.             InputStr "_", INTEGER001, 9, 2, Mask_Num(), 0
  132.             If (((INTEGER001 == "") || (INTEGER001 == 0)) || (INTEGER001 > INTEGER003)) Goto LABEL002
  133.             DGo 2, TINTEGER008(INTEGER001)
  134.             INTEGER007 = DGet(2, "RANK") * Random(100)
  135.             If (INTEGER007 > DGet(0, "CASH")) Then
  136.                 Gosub LABEL004
  137.                 Goto LABEL002
  138.             Endif
  139.             Gosub LABEL005
  140.             DOpen 2, PPEPath() + "LADIES.DBF", 0
  141.             DGo 2, TINTEGER008(INTEGER001)
  142.             PrintLn STRING007
  143.             PrintLn "@X40│               @X4EIt'll cost you $@X4A", INTEGER007, "@X4E to rename this one.@POS:79@@X4C│@X0F"
  144.             PrintLn STRING008
  145.             Print "                    Rename her? [Y]es / [N]o"
  146.             Backup 11
  147.             InputStr "_", STRING002, 15, 1, "YN", 0 + 8
  148.             If ((STRING002 == "") || (STRING002 == "N")) Goto LABEL002
  149.             DPut 0, "CASH", DGet(0, "CASH") - INTEGER007
  150.             Backup 80
  151.             ClrEol
  152.             InputStr "NEW NAME  _", STRING004, 15, 15, Mask_Ascii(), 0 + 8
  153.             DPut 2, "NAME", STRING004
  154.             BOOLEAN001 = 1
  155.         Endif
  156.         Select Case (STRING004)
  157.             Case "V"
  158.                 Backup 80
  159.                 ClrEol
  160.                 Print "               @X0CWHORE @X0E[@X0A##@X0E] @X0CTO HAVE DOCTOR SEE"
  161.                 Backup 22
  162.                 InputStr "_", INTEGER001, 2, 9, Mask_Num(), 0
  163.                 If (((INTEGER001 == "") || (INTEGER001 == 0)) || (INTEGER001 > INTEGER003)) Goto LABEL002
  164.                 Backup 80
  165.                 ClrEol
  166.                 Print "@X03█ @X0E(@X0AB@X0E)@X02reast Enlargement! @X03█ @X0E(@X0AS@X0E)@X02TD Cure! @X03█ @X0E(@X0AP@X0E)@X02lastic Surgery@X03 █ @X0E(@X0AENTER@X0E) @X02to quit! @X03█ "
  167.                 InputStr "_", STRING004, 9, 1, "BSP", 0 + 8
  168.                 If (STRING004 == "B") Then
  169.                     DGo 2, TINTEGER008(INTEGER001)
  170.                     INTEGER005 = Abs(Random(100) - DGet(2, "BS")) * INTEGER012
  171.                     If (INTEGER005 > DGet(0, "CASH")) Then
  172.                         Gosub LABEL004
  173.                         Goto LABEL002
  174.                     Endif
  175.                     Backup 80
  176.                     ClrEol
  177.                     PrintLn "It will cost you $", INTEGER005, " Pay it?  [Y]es [N]o"
  178.                     InputStr "_", STRING002, 15, 1, "YN", 0 + 8
  179.                     If ((STRING002 == "N") || (INTEGER001 == "")) Goto LABEL002
  180.                     INTEGER006 = Random(10)
  181.                     If ((DGet(2, "BS") > 50) || (INTEGER006 == 8)) Then
  182.                         PrintLn "OPERATION UNSUCESSFUL!"
  183.                         DPut 2, "BS", DGet(2, "BS") - 5
  184.                         DPut 0, "CASH", DGet(0, "CASH") - INTEGER005
  185.                         Goto LABEL002
  186.                     Endif
  187.                     DPut 2, "BS", DGet(2, "BS") + 1
  188.                     DPut 0, "CASH", DGet(0, "CASH") - INTEGER005
  189.                     Goto LABEL002
  190.                     Goto LABEL003
  191.                 Endif
  192.                 If (STRING004 == "S") Then
  193.                     DGo 2, TINTEGER008(INTEGER001)
  194.                     INTEGER005 = Random(200) * INTEGER013
  195.                     If (INTEGER005 > DGet(0, "CASH")) Then
  196.                         Gosub LABEL004
  197.                         Goto LABEL002
  198.                     Endif
  199.                     Backup 80
  200.                     ClrEol
  201.                     PrintLn "It will cost you $", INTEGER005, " Pay it?  [Y]es [N]o"
  202.                     InputStr "_", STRING002, 15, 1, "YN", 0 + 8
  203.                     If ((STRING002 == "N") || (INTEGER001 == "")) Goto LABEL002
  204.                     INTEGER006 = Random(10)
  205.                     If ((DGet(2, "BS") > 50) || (INTEGER006 == 8)) Then
  206.                         PrintLn "PERSISTANT STD!"
  207.                         DPut 2, "INFECTED", "Y"
  208.                         DPut 0, "CASH", DGet(0, "CASH") - INTEGER005
  209.                         Goto LABEL002
  210.                     Endif
  211.                     DPut 2, "INFECTED", "N"
  212.                     DPut 0, "CASH", DGet(0, "CASH") - INTEGER005
  213.                     Goto LABEL002
  214.                     Goto LABEL003
  215.                 Endif
  216.             Case "P"
  217.                 DGo 2, TINTEGER008(INTEGER001)
  218.                 INTEGER005 = (Random(100) - DGet(2, "RANK")) * INTEGER011
  219.                 If (INTEGER005 > DGet(0, "CASH")) Then
  220.                     Gosub LABEL004
  221.                     Goto LABEL002
  222.                 Endif
  223.                 Backup 80
  224.                 ClrEol
  225.                 PrintLn "It will cost you $", INTEGER005, " Pay it?  [Y]es [N]o"
  226.                 InputStr "_", STRING002, 15, 1, "YN", 0 + 8
  227.                 If ((STRING002 == "N") || (INTEGER001 == "")) Goto LABEL002
  228.                 INTEGER006 = Random(10)
  229.                 If ((DGet(2, "BS") > 50) || (INTEGER006 == 8)) Then
  230.                     PrintLn "OPERATION UNSUCESSFUL!"
  231.                     INTEGER006 = DGet(2, "RANK") - Random(5)
  232.                     If (INTEGER006 < 1) INTEGER006 = 1
  233.                     DPut 2, "RANK", INTEGER006
  234.                     DPut 0, "CASH", DGet(0, "CASH") - INTEGER005
  235.                     Goto LABEL002
  236.                 Endif
  237.                 DPut 2, "RANK", DGet(2, "RANK") + 1
  238.                 DPut 0, "CASH", DGet(0, "CASH") - INTEGER005
  239.                 Goto LABEL002
  240.         End Select
  241.         :LABEL003
  242.         Goto LABEL002
  243.         :LABEL004
  244.         Gosub LABEL005
  245.         Newlines 3
  246.         PrintLn STRING007
  247.         PrintLn "@X40│                         @X4EINSUFFICIENT CASH ON HAND!  @POS:79@@X4C│@X0F"
  248.         PrintLn STRING008
  249.         Delay (2 * 182) / 10
  250.         Return
  251.         :LABEL005
  252.         Cls
  253.         DCloseAll
  254.         DOpen 0, PPEPath() + "HOHAUS.DBF", 0
  255.         DGo 0, INTEGER010
  256.         INTEGER003 = 0
  257.         For INTEGER002 = 1 To 10
  258.             STRING002 = Strip("G" + String(INTEGER002), " ")
  259.             If (DGet(0, STRING002) > 0) Inc INTEGER003
  260.         Next
  261.         DPut 0, "DEFENSE", (DGet(0, "KILLS") + DGet(0, "MUSCLE") + DGet(0, "BANKED") + DGet(0, "BRIBEAMT") + INTEGER003) * DGet(0, "LEVEL")
  262.         DPut 0, "NETWORTH", DGet(0, "CASH") + DGet(0, "BANKED") + DGet(0, "LEVEL") * (DGet(0, "MUSCLE") * 100) + (INTEGER003 * 100) * DGet(0, "LEVEL")
  263.         If (DGet(0, "CONDOMS") < 1) DPut 0, "CONDOMS", 0
  264.         Cls
  265.         If (BOOLEAN001) Then
  266.             PrintLn STRING006
  267.             PrintLn "@X10│@X1F", Mixed(Trim(DGet(0, "HANDLE"), " ")), "'s Holdings@POS:40@@X13Networth@X10:@X1A ", Trim(DGet(0, "NETWORTH"), " "), "@X13@POS:65@Level@X10:@X1E ", Trim(DGet(0, "LEVEL"), " "), "@POS:79@@X19│@X0F"
  268.             PrintLn STRING005
  269.         Endif
  270.         PrintLn STRING006
  271.         PrintLn "@X10│@X13Defensive status@X10:@X1E ", Trim(DGet(0, "DEFENSE"), " "), "@POS:25@@X13Condom Count @X10:@X1C ", Trim(DGet(0, "CONDOMS"), " "), "@X13@POS:50@Cronies@X10:@X1E ", Trim(DGet(0, "MUSCLE"), " "), "@POS:64@@X13Whores@X10:@X1C ", INTEGER003, "@POS:79@@X19│@X0F"
  272.         PrintLn STRING005
  273.         PrintLn "@X10┌──────────────────────────────@X19┐@X10┌────────────────────@X19┐@X10┌───────────────────────@X19┐@X0F"
  274.         PrintLn "@X10│@X13Offensive acts left@X10:@X9C ", Trim(DGet(0, "C_ACT_L"), " "), "@X19@POS:32@│@X10│ ", "@X13@POS:20@Banked@X10:@X1A ", Trim(DGet(0, "BANKED"), " "), "@POS:54@@X19│@X10│", "@X13 Played@X1E ", Trim(DGet(0, "PLAYED"), " "), "@X13 Times", "@POS:79@@X19│@X0F"
  275.         PrintLn "@X10└@X19──────────────────────────────┘@X10└@X19────────────────────┘@X10└@X19───────────────────────┘@X0F"
  276.         Return
  277.     Endif
  278.     :LABEL006
  279.     Cls
  280.     DCloseAll
  281.     End
  282.  
  283. ;------------------------------------------------------------------------------
  284. ;
  285. ; Usage report (before postprocessing)
  286. ;
  287. ; ■ Statements used :
  288. ;
  289. ;    2       End
  290. ;    4       Cls
  291. ;    8       ClrEol
  292. ;    48      Goto 
  293. ;    34      Let 
  294. ;    7       Print 
  295. ;    33      PrintLn 
  296. ;    36      If 
  297. ;    11      InputStr 
  298. ;    9       Gosub 
  299. ;    2       Return
  300. ;    2       Delay 
  301. ;    1       Inc 
  302. ;    1       Newline
  303. ;    2       Newlines 
  304. ;    13      Backup 
  305. ;    1       EndFunc
  306. ;    5       DOpen 
  307. ;    1       DClose 
  308. ;    2       DCloseAll
  309. ;    8       DGo 
  310. ;    3       DGet 
  311. ;    20      DPut 
  312. ;
  313. ;
  314. ; ■ Functions used :
  315. ;
  316. ;    16      *
  317. ;    3       /
  318. ;    28      +
  319. ;    12      -
  320. ;    31      ==
  321. ;    5       <
  322. ;    3       <=
  323. ;    12      >
  324. ;    4       >=
  325. ;    19      !
  326. ;    4       &&
  327. ;    16      ||
  328. ;    9       Trim()
  329. ;    11      Random()
  330. ;    3       Strip()
  331. ;    4       String()
  332. ;    3       Mask_Num()
  333. ;    1       Mask_Ascii()
  334. ;    5       PPEPath()
  335. ;    2       PcbNode()
  336. ;    1       GetEnv()
  337. ;    1       Abs()
  338. ;    1       ToInteger()
  339. ;    1       Mixed()
  340. ;    1       DRecNo()
  341. ;    59      DGet()
  342. ;
  343. ;------------------------------------------------------------------------------
  344. ;
  345. ; Analysis flags : No flag
  346. ;
  347. ;------------------------------------------------------------------------------
  348. ;
  349. ; Postprocessing report
  350. ;
  351. ;    2       For/Next
  352. ;    0       While/EndWhile
  353. ;    15      If/Then or If/Then/Else
  354. ;    1       Select Case
  355. ;
  356. ;------------------------------------------------------------------------------
  357. ;                 AEGiS Corp - Break the routines, code against the machines!
  358. ;------------------------------------------------------------------------------
  359.